/*
 * Copyright 2017 Baiyyy
 * @(#)IColdStorageBoxService.java
 */

package com.byyy.ccts.modules.ysjl.service;

import com.byyy.ccts.core.common.service.ICommonService;
import com.byyy.ccts.core.query.data.Queryable;
import com.byyy.ccts.core.query.wrapper.EntityWrapper;
import com.byyy.ccts.modules.ysjl.entity.YsjlActivity;
import com.byyy.ccts.modules.ysjl.entity.YsjlActivityEnroll;

import javax.servlet.http.HttpServletRequest;
import java.util.List;

/**
 * Created by DELL on 2018-6-13.
 */
public interface IYsjlActivityService extends ICommonService<YsjlActivity> {

    /** 自定义分页 */
    com.byyy.ccts.core.query.data.Page<YsjlActivity> pageActivityList(Queryable queryable, EntityWrapper<YsjlActivity> wrapper);

    /** 自定义分页 */
    com.byyy.ccts.core.query.data.Page<YsjlActivity> queryUserActivityListPage(Queryable queryable, EntityWrapper<YsjlActivity> wrapper);

    /** 查询首页活动 */
    List<YsjlActivity> queryList(String userId);

    /** 查询我的活动 */
    List<YsjlActivity> queryMyActivityList(String userId);

    /** 活动详情 */
    YsjlActivity activityInfo(String activityId, String userId);

    /** 后台管理提交活动 */
    String submitActivity(HttpServletRequest request, YsjlActivity activity);

    /** 通过活动名单报名，可多人报 */
    String join(List<YsjlActivityEnroll> enrollList);

    /** 删除报名信息 */
    String deleteEnroll(YsjlActivityEnroll enroll);

    /** 更新活动信息 */
    String updateActivity(YsjlActivity activity);

    /** 删除活动 */
    String deleteActivity(String id);

    String generateQRCode(HttpServletRequest request,  String activityId, String qrPath);

    YsjlActivity myJoinInfo(String id, String userId);

    void countScore();

}

